Elm: Concurrent FRP for Functional GUIs

نویسنده

  • Evan Czaplicki
چکیده

Graphical user interfaces (GUIs) mediate almost all of our interactions with computers, whether it is through web pages, phone apps, or desktop applications. Functional Reactive Programming (FRP) is a promising approach to GUI design. This thesis presents Elm, a concurrent FRP language focused on easily creating responsive GUIs. Elm has two major features: (1) purely functional graphical layout and (2) support for Concurrent FRP. Purely functional graphical layout is a high level framework for working with complex visual components. It makes it quick and easy to create and combine text, images, and video into rich multimedia displays. Concurrent FRP solves some of FRP’s long-standing efficiency problems: global delays and needless recomputation. Together, Elm’s two major features simplify the complicated task of creating responsive and usable graphical user interfaces. This thesis also includes a fully functional compiler for Elm, available at elm-lang.org. This site includes an interactive code editor that allows you to write and compile Elm programs online with no download or install.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Functional Logic Programming Approach to Graphical User Interfaces

We show how the features of modern integrated functional logic programming languages can be exploited to implement graphical user interfaces (GUIs) in a high-level declarative style. For this purpose, we have developed a GUI library in Curry, a multi-paradigm language amalgamating functional, logic, and concurrent programming principles. The functional features of Curry are exploited to deene t...

متن کامل

Linear Temporal Type Theory for Event-based Reactive Programming

Inspired by the Curry-Howard correspondence between Functional Reactive Programming (FRP) and Linear-time Temporal Logic (LTL), this paper applies temporal types to describe a functional, event-driven language with an underlying event queue. The result is a compelling abstraction for linear computations with temporal types. We present a toy surface language for event-based GUIs and give some ex...

متن کامل

Linear Temporal Type Theory for Event-based Reactive Programming

Inspired by the Curry-Howard correspondence between Functional Reactive Programming (FRP) and Linear-time Temporal Logic (LTL), this paper applies temporal types to describe a functional, event-driven language with an underlying event queue. The result is a compelling abstraction for linear computations with temporal types. We present a toy surface language for event-based GUIs and give some ex...

متن کامل

Gadgets: Lazy Functional Components for Graphical User Interfaces

We describe a process extension to a lazy functional programming system, intended for applications with graphical user interfaces (GUIs). In the extended language, dynamically-created processes communicate by asynchronous message passing. We illustrate the use of the language, including as an extended example a simple board game in which squares are implemented as concurrent processes. We also ...

متن کامل

Stephen Chong Research Statement

ions; and the availability of application-meaningful abstractions can enable precise enforcement of application-specific security requirements. We have considered practical enforcement of strong information security using a variety of techniques (including capabilities, hybrid monitors, cryptographic mechanisms, and PDGs) in a variety of settings (including concurrent programs and web applicati...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2012